package com.cskaoyan.javse.oop2._2polymorphic._1basic._1member;
/**
 * 成员变量的访问是没有多态现象的，父子类存在同名成员变量，表现出属性的隐藏。
 *
 * 用一句话来总结，对象名点成员变量的访问特征：
 *
 * 编译时（访问范围）看左边，运行时（访问结果）还看左边。
 *
 * 成员变量描述的是对象的属性或者外貌特征，把子类对象赋值给父类的引用，就相当于给子类对象披上了一个父类类型马甲。这样在外界看来，这时候的子类就变成了父类。
 * 总之，还是这句话：编译时看左边，运行时看左边。
 * 
 * @since 17:05
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo {
    public static void main(String[] args) {
        Father f;
        f = new Son();
        System.out.println(f.a);
        f = new Son2();
        System.out.println(f.a);
    }
}
class Father{
    int a = 10;
}
class Son extends Father{
    int a = 20;
}
class Son2 extends Father{
    int a = 30;
}
